package com.neu.questionnaireplus.dao;

import com.neu.questionnaireplus.entity.Group;
import java.util.List;
import org.springframework.stereotype.Repository;

@Repository
public interface GroupDao {
    /**
     * @Description: 查询所有群组
     * @Param: []
     * @return: java.util.List<com.neu.questionnaireplus.entity.Group>
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    List<Group> queryGroup();

    /**
     * @Description: 查询未被删除的群组
     * @Param: []
     * @return: java.util.List<com.neu.questionnaireplus.entity.Group>
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/31
     */
    List<Group> queryExistGroup();

    /**
     * @Description: 模糊查询群组
     * @Param: [group]
     * @return: java.util.List<com.neu.questionnaireplus.entity.Group>
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    List<Group> selectGroupList(Group group);

    /**
     * @Description: 根据id查询群组并返回
     * @Param: [id]
     * @return: com.neu.questionnaireplus.entity.Group
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    Group queryGroupByID(String id);

    /**
     * @Description: 插入一个Group进数据库
     * @Param: [group]
     * @return: boolean
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    int insertGroup(Group group);

    /**
     * @Description: 根据id更新群组
     * @Param: [group]
     * @return: boolean
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    int updateGroup(Group group);

    /**
     * @Description: 根据id删除群组
     * @Param: [id]
     * @return: boolean
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/30
     */
    int deleteGroup(String id);

    /**
     * @Description: 通过群组名精确查询群组
     * @Param: [groupname]
     * @return: com.neu.questionnaireplus.entity.Group
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/31
     */
    Group queryGroupByGroupname(String groupname);

    /**
     * @Description:  通过群组名模糊查询群组
     * @Param: [groupname]
     * @return: com.neu.questionnaireplus.entity.Group
     * @Author: ~FHX~ (:TSunS:)
     * @Date: 2022/10/31
     */
    List<Group> queryGroupByName(String groupname);



}
